<?php

class catalogoController extends Controller {
    public function __construct() {
        parent::__construct();
    }
    
    public function index(){
        $clientes = $this->loadModel('Clientes');
        $producto = $this->loadModel('Partes');
        $Dimension = $this->loadModel('Dimensiones');
        
        $clientes->open();
        $producto->open();
        $Dimension->open();
        
        $clientes = $clientes->getClientes();
        
        foreach($clientes as &$cliente){
            $cliente['productos'] = $producto->getProducto($cliente['id']);
            
            foreach($cliente['productos'] as &$prod){
                $prod['dimensiones'] = $Dimension->getDimensiones($prod['id']);
            }
        }
        
        //print_r($clientes);
        
        $this->_view->assign('clientes',$clientes);
        $this->_view->renderizar('index','catalogo');
    }
    
    public function nuevo($tipo){
        if(isset($_POST['guardar'])){
            unset($_POST['guardar']);
            unset($_POST['id']);
            $model = $this->loadModel($tipo);
            $model->open();
            //var_dump($_POST);exit;
            if(!$model->insert($_POST)){
                $this->_view->renderizar('frm'.$tipo,'catalogo');
            }
            $this->redireccionar('calidad/catalogo');
        }
        $option_tipo_id = "";
        $option_tipo_descrip = "";
        
        switch($tipo){
            case 'Dimensiones':
                $producto = $this->loadModel('Partes');
                $producto->open();
                $productos = $producto->getProductos();
                
                foreach($productos as $prod){
                    $option_tipo_id[] = $prod['id'];
                    $option_tipo_descrip[] = $prod['no_parte'];
                }
                break;
            case 'Partes':
                $clientes = $this->loadModel('Clientes');
                $clientes->open();
                $clientes = $clientes->getClientes();
                
                foreach($clientes as $clie){
                    $option_tipo_id[] = $clie['id'];
                    $option_tipo_descrip[] = $clie['cliente'];
                }
                
                break;
        }
        
        $this->_view->assign('option_tipo_id',$option_tipo_id);
        $this->_view->assign('option_tipo_descrip',$option_tipo_descrip);
        
        $this->_view->renderizar('frm'.$tipo,'catalogo');
    }
    
    public function editar($tipo,$id){
        $model = $this->loadModel($tipo);
        $model->open();
        $model->get('id',$id);
        
        $option_tipo_id = "";
        $option_tipo_descrip = "";
        
        switch($tipo){
            case 'Dimensiones':
                $producto = $this->loadModel('Partes');
                $producto->open();
                $productos = $producto->getProductos();
                if(isset($_POST)){
                    if(!isset($_POST['atributo'])){
                        $_POST['atributo'] = 0;
                    }
                    
                    if(!isset($_POST['final'])){
                        $_POST['final'] = 0;
                    }
                }
                foreach($productos as $prod){
                    $option_tipo_id[] = $prod['id'];
                    $option_tipo_descrip[] = $prod['no_parte'];
                }
                break;
            case 'Partes':
                $clientes = $this->loadModel('Clientes');
                $clientes->open();
                $clientes = $clientes->getClientes();
                
                foreach($clientes as $clie){
                    $option_tipo_id[] = $clie['id'];
                    $option_tipo_descrip[] = $clie['cliente'];
                }
                
                break;
        }
        
        if(isset($_POST['guardar'])){
            unset($_POST['guardar']);
            //var_dump($_POST);exit;
            if($model->update($_POST, "id = $id")){
                $this->redireccionar('calidad/catalogo');
            }
        }
        
        $this->_view->assign('option_tipo_id',$option_tipo_id);
        $this->_view->assign('option_tipo_descrip',$option_tipo_descrip);
        $this->_view->assign('datos',$model->_data);
        
        $this->_view->renderizar('frm'.$tipo,'catalogo');
    }
    
    public function eliminar($tipo,$id){
        $model = $this->loadModel($tipo);
        $model->open();
        $model->delete('id',$id);
        
        $this->redireccionar('calidad/catalogo');
    }
}

?>